# 需求:
# 1、定义字典存储测试数据，包含账号和密码
# 提示:[{"username": "13488888888", "password": "123456"},
# {"username": "", "password": "123456"}]
# 2、遍历数据进行测试账号和密码校验
# 3、当手机号为"13488888888"且密码为"123456"时，输出"登录成功"；否则"错误或密码错误"。

# 定义字典（非空）元素的列表
login_data = [
    {"username": "13488888888", "password": "123456"},
    {"username": "", "password": "123456"},
    {"username": "13800000001", "password": ""},
    {"username": "13800000001", "password": "123"}
]
#     先实现业务功能（函数）
def login(phone,pwd):
    """
    登录判断函数
    :param phone: 手机号
    :param pwd: 密码
    :return: 无
    """
    if phone == "13488888888" and pwd == "123456":
        print("登录成功")
    else:
        print("登录失败")
# for data in login_data:
#     login(data["username"],data["password"])


# 再构造数据进行验证
num = 1   #计数器
for i in login_data:
    # 获取账号密码
    phone = i.get("username")
    pwd = i.get("password")
    print(f"第{num}次测试")
    # 调用函数
    login(phone,pwd)
    num +=1  #调用一次计数器增1

    # 函数的返回值
    # 作用：在调用函数后希望得到函数返回的结果
    # 语法格式：
    # def 函数名（参数1,....):
    # 函数封装的代码
    # return xxx

# 定义函数
def login(phone):
    """
    模拟登录
    :param phone: 验证手机号
    :return: 返回账号的结果
    """
# 模拟登录
    if phone == "13488888888":
        return "账号正确"
    else:
        return "账号错误"
    # 调用函数
    # a = login("13800000001") # 返回的结果找变量接收
    # print(a) # 想看结果就直接打印出来
    # print(login("13488888888"))
    # 调用函数断言结果
assert "账号错误" == login("13800000001")  # 预期结果 == 实际结果
assert "正确" in login("13488888888")  # 预期结果 in 实际结果

# 需求：设计一个函数用于获取两个数中的较大数，数据来自于函数的参数，最后返回较大值
# 1.定义函数
def get_max(num1, num2):
    """获取较大值函数"""
# 有两个数字：直接通过参数传递
# 判断大小关系
    if num1 > num2: # num1大于num2 返回num1
# 返回较大值
        return num1
    else: # num1小于等于num2 返回num2
        return num2
# 2.调用函数
# num = get_max(10, 20)
# print(num)
print(get_max(10, 20))
